package cn.com.chengmandian.xh.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 机柜表
 * </p>
 *
 * @author AutoGenerator
 */
@Getter
@Setter
@TableName("xh_cabinet")
@ApiModel(value = "XhCabinet对象", description = "机柜表")
public class XhCabinet implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("自增主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty("门店id(0代表未绑定门店)")
    private Integer shopId;

    @ApiModelProperty("机柜编号")
    private String cabinetNo;

    @ApiModelProperty("机柜产品id")
    private Integer cabinetProductId;

    @ApiModelProperty("物理设备名称")
    private byte[] deviceName;

    @ApiModelProperty("名称")
    private String cabinetName;

    @ApiModelProperty("描述")
    private String cabinetDes;

    @ApiModelProperty("机柜类型：1.换电柜2.储电柜")
    private Integer cabinetType;

    @ApiModelProperty("地址")
    private String address;

    @ApiModelProperty("经度")
    private BigDecimal lon;

    @ApiModelProperty("纬度")
    private BigDecimal lat;

    @ApiModelProperty("省id")
    private Integer provinceId;

    @ApiModelProperty("市id")
    private Integer cityId;

    @ApiModelProperty("区域ID")
    private Integer areaId;

    @ApiModelProperty("(暂时废弃)最大存储数")
    private Integer maxNum;

    @ApiModelProperty("满电比")
    private Integer fullEnergeRate;

    @ApiModelProperty("运维端二维码地址")
    private String opsQrCodeUrl;

    @ApiModelProperty("C端二维码地址")
    private String qrCodeUrl;

    @ApiModelProperty("换电方式1.换电柜 2.软件平台")
    private Integer chargeMode;

    @ApiModelProperty("是否处理物联网消息0.不处理，1.处理")
    private Integer isIot;

    @ApiModelProperty("是否自动创建电池0-不创建 1-自动创建")
    private Integer isCreateBattery;

    @ApiModelProperty("是否启用：0.否1.是(默认)")
    private Integer isEnabled;

    @ApiModelProperty("是否删除：0.否(默认)1.是")
    @TableLogic(value = "0" ,delval = "1")
    private Integer isDeleted;

    @ApiModelProperty("机柜状态：1.正常(默认)2.损坏")
    private Integer cabinetStatus;

    @ApiModelProperty("上下线时间")
    private String lineTime;

    @ApiModelProperty("在线状态：1.在线2.下线")
    private Integer lineStatus;

    @ApiModelProperty("最后上报数据时间")
    private Date lastDataTime;

    @ApiModelProperty("电池仓数量:0-100")
    private Integer doorCount;

    @ApiModelProperty("空仓数量:0-100")
    private Integer emptyCount;

    @ApiModelProperty("电池总数:0-100")
    private Integer batteryCount;

    @ApiModelProperty("电池充满数量:0-100")
    private Integer fullCount;

    @ApiModelProperty("可换电池数量")
    private Integer readyCount;

    @ApiModelProperty("正在充电电池数量:0-100")
    private Integer chargeCount;

    @ApiModelProperty("换电soc阈值")
    private Integer soc;

    @ApiModelProperty("最新用电量数据采集时间")
    private Date electricCollectTime;

    @ApiModelProperty("最新充电数据采集时间")
    private Date chargingCollectTime;

    @ApiModelProperty("创建人ID")
    private Integer creatorId;

    @ApiModelProperty("创建人")
    private String creator;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("更新时间")
    private Date modifyTime;

}
